package cn.tedu.dao;

import cn.tedu.entity.User;
import org.springframework.stereotype.Repository;

@Repository
public interface UserMapper {
    /**
     * 根据主键ID删除该用户信息
     * @param id id主键
     * @return 返回受影响的行数
     */
    int deleteByPrimaryKey(Integer id);

    /**
     * 增加新用户(注册)
     * @param record 新用户数据
     * @return 返回受影响的行数
     */
    int insert(User record);

    /**
     * 用户名验证查询
     * @param username 用户名
     * @return  返回用户信息
     */
    User selectByName(String username);

    /**
     * id检验查询
     * @param id    用户id
     * @return  返回用户信息
     */
    User selectById(Integer id);

    /**
     * 邮箱地址验证查询
     * @param email 邮箱
     * @return  返回邮箱信息
     */
    String selectByEmail(String email);

    /**
     * 手机号验证查询
     * @param phone 手机号码
     * @return  返回手机信息
     */
    String selectByPhone(String phone);

    /**
     * 用户信息修改
     * @param record 整个用户信息
     * @return  返回修改成功后受影响的行数 0 代表修改失败
     */
    int updateByPrimaryKeySelective(User record);

}